package com.google.bitcoin.core;

import java.util.Collection;

/**
 * @author apetersson
 */
public interface TransactionSigner {
    //todo when generalizing to local wallet, change this signature to: List<Boolean> canSign(List<Address> missingKeys);
    Collection<PubKey> canSign(Collection<PubKey> missingKeys);

    byte[] sign(Transaction transaction, PubKey usePubKey, int inputIndex, Sha256Hash hashBytes);
}
